共计 1452 个字符,预计需要花费 4 分钟才能阅读完成。
文件打开模式 "t"
- 文件默认的打开模式是 "t" 模式:文本模式
- 不能单独使用,必须与 r,w,a 模式组合使用
- 读写文件以 字符串 为单位,只能读写文本文件,需要 指定字符编码
1. 打开文件
f=open(r'文件的路径',mode='打开文件的模式',encoding='操作文件的字符编码')
f=open(r'a.txt',mode='r')
print(f)
2. 读 / 写
data=f.read()
print(data)
f.write()
3. 关闭文件
- 回收系统资源
f.close()
print(f)
del f # 删除程序的内存空间, 解除绑定关系
4. 打开多个文件
f1=open(r'a1.txt',mode='r',encoding='UTF-8')
f2=open(r'a2.txt',mode='r',encoding='UTF-8')
with open(r'a1.txt',mode='r',encoding='utf-8') as f1,\
open(r'a2.txt',mode='r',encoding='utf-8') as f2:
print(f1.read())
print(f2.read())
操作文件的模式有三种:r,w,a
1、r:默认的打开模式, 只读模式
- 指针跳到行首, 文件不存在时报错
(1) .read()
f = open('a.txt', mode='r', encoding='utf-8') #mode='rt'
f.write('哈哈啊哈哈啊啊 啊啊 123213213123\n') #抛出异常,不能写
print(f.readable()) #查看是否可读
print('=============>1')
print(f.read())
print('=============>2')
print(f.read())
f.close() #关闭文件
(2) .readline()
f=open('a.txt',mode='r',encoding='utf-8')
print(f.readline(),end='')
print(f.readline(),end='') #每次只打印一行
print(f.readline(),end='') #从上往下打印一行
f.close()
(3) .readlines()
f=open('a.txt',mode='r',encoding='utf-8') #mode='rt'
print(f.readlines()) #['111\n', '222\n', '333\n', '444']
f.close()
2、w : 只写模式
- 当文件不存时, 创建空文档
- 当文件存在时, 清空文档
(1) .write()
f=open(r'a1.txt',mode='w',encoding='utf-8') #默认 'wt'
f.write('第一行')
f.write('第二行 \n')
(2).writelines()
🍉循环从列表里面取出值写进去
f.writelines(['111111\n','222222\n','333333\n'])
f.write('aaaaaaaa\nbbbbbbb\nccccccc\n') #.write() 加转行符号效果相同
f.close()
3、a:只追加模式
- 文件不存在时, 创建空文件
- 文件存在时, 光标直接跑到文件末尾
f=open('a4.log',mode='a',encoding='utf-8')
print(f.writable())
f.readlines() # 进行读操作, 报错
f.write('派大星 666\n')
f.close()
正文完